hive报错 | 您所在的位置:网站首页 › hive code 10004 › hive报错 |
1、Hive查询报错 Invalid table alias or column reference 'create_time': (possible column names are: _c0, _c1 解决办法:https://blog.csdn.net/qq_31573519/article/details/52790671
2、hive日期格式转换 将 Tue May 20 22:41:01 CST 2014 转换为: yyyy-MM-dd HH:mm:ss http://www.360doc.com/content/18/0626/21/8772388_765637973.shtml
3、group by去重 SELECT user_name,commentid,collect_set(title)[0] as title,collect_set(source)[0] as source,collect_set(content)[0] as content ,collect_set(time)[0] as time,collect_set(car_model)[0] as car_model FROM user_2morecars GROUP BY user_name,commentid;————————————————版权声明:本文为CSDN博主「HFUT_qianyang」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qy20115549/article/details/83831307
4、hive分区表添加字段出现新增字段null的bug 注:实际上在添加字段是可以通过CASCADE关键字来,避免这种问题,如 alter table dw_hestia.dw_hestia_core_rent_unit add columns(ZIROOM_VERSION_ID string) CASCADE ; 5、hive并行跑 set hive.exec.parallel=true; set hive.exec.parallel.thread.number=32; 6、把表改成分区表 ALTER TABLE $HIVE_TABLE_NAME SET TBLPROPERTIES('EXTERNAL'='TRUE') 7、hive把空值处理成0 if(coalesce(trim(order_code),'')='',0,order_code) 8、sqoop 从hive导到oracle报错 Error: java.lang.NumberFormatException at java.math.BigDecimal.(BigDecimal.java:494) at java.math.BigDecimal.(BigDecimal.java:383) at java.math.BigDecimal.(BigDecimal.java:806) at org.apache.sqoop.mapreduce.hcat.SqoopHCatExportHelper.convertStringTypes(SqoopHCatExportHelper.java:275) at org.apache.sqoop.mapreduce.hcat.SqoopHCatExportHelper.convertToSqoop(SqoopHCatExportHelper.java:215) at org.apache.sqoop.mapreduce.hcat.SqoopHCatExportHelper.convertToSqoopRecord(SqoopHCatExportHelper.java:138) at org.apache.sqoop.mapreduce.hcat.SqoopHCatExportMapper.map(SqoopHCatExportMapper.java:56) at org.apache.sqoop.mapreduce.hcat.SqoopHCatExportMapper.map(SqoopHCatExportMapper.java:35) at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145) at org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64) at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787) at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698) at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)原因:hive里面的类型是string oracle里面有varchar(2)he number 处理方法: oracle里面number类型的在hive上进行处理: if(coalesce(trim(t_index),'')='',0,t_index)
|
CopyRight 2018-2019 实验室设备网 版权所有 |